{{tag>Maverick administration réseau sauvegarde configurations Cisco Juniper BROUILLON}}

====== RANCID : Really Awesome New Cisco confIg Differ ======

<note tip>Rancid est un [[:archivage|gestionnaire de configurations]] d'équipements réseau. Principalement destiné aux administrateurs réseau, il utilise une base CVS permettant de conserver un historique des configurations sauvegardées.</note>

Le code source est fourni par Terrapin Communications, Inc. dont la licence est diffusée ici : [[http://www.shrubbery.net/rancid/LICENSE.txt|Licence]].

Les copyrights associés à Rancid exigent que cette licence soit diffusée avec les sources quelque soit le mode de redistribution de celles-ci, et le nom de la compagnie ne doit pas être utilisé en tant qu'argument de vente.

<note important>Cet article a été réalisé en utilisant la version 2.3.6 de Rancid.</note>

===== Installation =====

==== Pré-requis ====

<note>Dans cet article, nous supposons travailler sur une installation de base n'ayant pas de serveur CVS déjà installé.</note>

Avant d'installer Rancid, il faut d'abord [[:tutoriel:comment_installer_un_paquet|installer les paquets]] **[[apt>cvs,cvsweb,expect|cvs cvsweb expect]]**.

Parmis ces paquets figurent :
  * [[:cvs|cvs]] : base CVS pour gérer le suivi de versions
  * [[:cvsweb|cvsweb]] : interface web permettant d'accéder aux données CVS
  * <del>[[|resolvconf]] : utilisé par exim4</del>
  * [[:exim4-satellite|exim4]] : agent de transfert de mail, utilisé par Rancid pour diffuser les rapports de sauvegarde

<note important>La configuration de ces paquets est couverte dans cet article, il n'est donc pas nécessaire de se reporter à leurs pages respectives.</note>

Avant de poursuivre, il est important de tester la bonne configuration des services précédemment installés. Pour vérifier le fonctionnement de cvsweb, accéder à la page web en local [[http://127.0.0.1/cgi-bin/cvsweb/]]. Le message d'erreur ci-dessous devrait apparaittre :
<code>Error: No valid CVS roots found! See @CVSrepositories in the configuration file (/etc/cvsweb/cvsweb.conf).</code> 

Comme le message l'indique, le serveur CVS n'est pas configuré. Cette étape sera traitée dans la section **Configuration**.

<note warning>L'installation de cvsweb reconfigure automatique le serveur Apache2. Cependant, si l'accès à la page retourne une erreur du type **404 Not Found**, veuillez vérifier la configuration de votre serveur Apache2</note>

==== Depuis les dépôts Ubuntu ====

==== Depuis les sources ====

Cette section décrit l'installation de Rancid depuis les sources disponibles sur le site de Shrubbery Networks, Inc. : [[http://www.shrubbery.net/rancid/|Rancid]]

<code>
cd /usr/src/
wget ftp://ftp.shrubbery.net/pub/rancid/rancid-2.3.6.tar.gz
tar xvzf rancid-2.3.6.tar.gz
./configure -prefix=/
sudo make install
</code>

===== Configuration =====

==== Emplacement des fichiers ====

Une fois installé, les dossiers et fichiers se retrouve comme suit :

  * Scripts d'exécution : 
<code>/bin/[rancid-run,rancid-cvs,erancid,...]</code>
  * Fichier de configuration principal :
<code>/etc/rancid.conf</code>
  * Fichiers de configuration des groupes et des équipements :
<code>/var/CVS</code>

==== Configuration de cvsweb ====

Une première étape est la configuration du serveur **cvsweb**. En effet, il faut lui spécifier le répertoire racine qu'il doit utiliser. Pour cela, il faut éditer le fichier **/etc/cvsweb/cvsweb.conf** et ajouter un répertoire racine comme indiqué dans l'exemple ci-dessous :

<code>
@CVSrepositories = (
        'Rancid'   => ['Rancid', '/var/rancid'],
);
</code>

<note important>
Le chemin du répertoire racine indiqué doit correspondre à celui utilisé lors de l'Autoconf à l'installation. Par défaut, c'est **/var/rancid**, mais il peut être différent si vous avez spécifié les paramètres **--prefix** ou **--localstatedir** du script de configuration.
</note>

==== Création d'un groupe d'équipements ====

Rancid gère les équipements par groupe. Ainsi, pour chaque groupe sont associés des équipements, et des utilisateurs pour la réception des rapports de sauvegarde.

Ici nous allons créer un premier groupe **GRP_SW_1**. Pour cela, modifier le fichier de configuration **/etc/rancid.conf** et spécifier la valeur de **LIST_OF_GROUP** :
<code>LIST_OF_GROUPS="GRP_SW_1"</code>

La commande suivante doit ensuite être utilisée pour créer ce groupe dans la base CVS.
<code>rancid-cvs</code>

<note help>La commande "rancid-cvs" doit être utilisée chaque fois qu'un groupe est ajouté, modifié ou supprimé dans le fichier de configuration **/etc/rancid.conf**</note>

===== Utilisation=====

Lancez l'application depuis le menu //Applications -> Accessoires -> Machin Chose// ou //via// la [[:commande_shell|commande]] suivante :
<code>machin-chose</code>

<note tip>Raccourcis intéressants ? Fonctions cachées ? Expliquez le fonctionnement général de ce que vous présentez (là non plus, il n'est pas nécessaire de copier-coller la page de manuel).
</note>

===== Désinstallation =====

La suppression de Rancid dépend de la méthode d'installation. Cependant, dans les deux cas décrits ci-dessous les fichiers de configurations seront conservés.

==== Depuis les sources ====

Procéder comme indiqué ci-dessous :

<code>
cd /usr/src/rancid-2.3.6
make uninstall
</code>

Puis supprimer les paquets indiqués dans la section **Installation** s'ils ne sont plus requis ultérieurement. Le paquet **[[apt>expect|expect]]** est assez spécifique à l'utilisation de Rancid, il sera donc généralement à supprimer.
<code>sudo apt-get remove expect</code>

Par ailleurs, si l'historique des configurations ainsi que l'accès via l'interface web doivent être conservés, les paquets **[[apt>cvs,cvsweb|cvs cvsweb]]** ne doivent être supprimés. Dans le cas contraire :
<code>sudo apt-get remove cvs cvsweb</code>

===== Troubleshooting =====

==== cvsweb : 404 Not Found ====

En cas d'affichage de l'erreur **404 Not Found** lors du chargement de la page web [[http://127.0.0.1/cgi-bin/cvsweb]], cela signifie généralement que c'est le serveur Apache2 est mal configuré. Dans ce cas, il faut vérifier :
  * la présence du dossier **cvsweb** à l'emplacement **/usr/lib/cgi-bin/**
  * les droits d'accès en 755 sur le répertoire **/usr/lib/cgi-bin/cvsweb**
  * la bonne configuration du répertoire **/usr/lib/cgi-bin/cvsweb** dans le fichier **/etc/apache2/sites-enabled/000-default**
<code>
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>
</code>

Lorsque ces 3 points ont été vérifiés, redémarrer le service Apache puis effectuer un nouveau test d'accès web.
<code>sudo service apache2 restart</code>

===== Voir aussi =====

  * **(en)** [[http://bidule.org/projects/bidule/|Site officiel du logiciel Bidule]]
  * **(fr, en)** [[http://www.bidule.org|Manuel d'utilisation du logiciel Bidule]]
  * [[http://forum.ubuntu-fr.org/viewtopic.php?id=64840|Discussion « J'ai un soucis avec le logiciel Bidule »]] sur le forum Ubuntu-fr

----

//Contributeurs : [[utilisateurs:fdm|fdm]]//